package com.ruoyi.user.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 用户对象 sys_user_20231012
 *
 * @author pengjie
 * @date 2023-12-18
 */
public class User extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private String id;

    /** 登录账号 */
    @Excel(name = "登录账号")
    private String username;

    /** 真实姓名 */
    @Excel(name = "真实姓名")
    private String realname;

    /** 密码 */
    @Excel(name = "密码")
    private String password;

    /** md5密码盐 */
    @Excel(name = "md5密码盐")
    private String salt;

    /** 头像 */
    @Excel(name = "头像")
    private String avatar;

    /** 生日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /** 性别(0-默认未知,1-男,2-女) */
    @Excel(name = "性别(0-默认未知,1-男,2-女)")
    private Integer sex;

    /** 电子邮件 */
    @Excel(name = "电子邮件")
    private String email;

    /** 电话 */
    @Excel(name = "电话")
    private String phone;

    /** 机构编码 */
    @Excel(name = "机构编码")
    private String orgCode;

    /** 性别(1-正常,2-冻结) */
    @Excel(name = "性别(1-正常,2-冻结)")
    private Integer status;

    /** 删除状态(0-正常,1-已删除) */
    private Integer delFlag;

    /** 第三方登录的唯一标识 */
    @Excel(name = "第三方登录的唯一标识")
    private String thirdId;

    /** 第三方类型 */
    @Excel(name = "第三方类型")
    private String thirdType;

    /** 同步工作流引擎(1-同步,0-不同步) */
    @Excel(name = "同步工作流引擎(1-同步,0-不同步)")
    private Integer activitiSync;

    /** 工号，唯一键 */
    @Excel(name = "工号，唯一键")
    private String workNo;

    /** 职务，关联职务表 */
    @Excel(name = "职务，关联职务表")
    private String post;

    /** 座机号 */
    @Excel(name = "座机号")
    private String telephone;

    /** 身份（1普通成员 2上级） */
    @Excel(name = "身份", readConverterExp = "1=普通成员,2=上级")
    private Integer userIdentity;

    /** 负责部门 */
    @Excel(name = "负责部门")
    private String departIds;

    /** 多租户标识 */
    @Excel(name = "多租户标识")
    private String relTenantIds;

    /** 设备ID */
    @Excel(name = "设备ID")
    private String clientId;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setUsername(String username)
    {
        this.username = username;
    }

    public String getUsername()
    {
        return username;
    }
    public void setRealname(String realname)
    {
        this.realname = realname;
    }

    public String getRealname()
    {
        return realname;
    }
    public void setPassword(String password)
    {
        this.password = password;
    }

    public String getPassword()
    {
        return password;
    }
    public void setSalt(String salt)
    {
        this.salt = salt;
    }

    public String getSalt()
    {
        return salt;
    }
    public void setAvatar(String avatar)
    {
        this.avatar = avatar;
    }

    public String getAvatar()
    {
        return avatar;
    }
    public void setBirthday(Date birthday)
    {
        this.birthday = birthday;
    }

    public Date getBirthday()
    {
        return birthday;
    }
    public void setSex(Integer sex)
    {
        this.sex = sex;
    }

    public Integer getSex()
    {
        return sex;
    }
    public void setEmail(String email)
    {
        this.email = email;
    }

    public String getEmail()
    {
        return email;
    }
    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }
    public void setOrgCode(String orgCode)
    {
        this.orgCode = orgCode;
    }

    public String getOrgCode()
    {
        return orgCode;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setDelFlag(Integer delFlag)
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag()
    {
        return delFlag;
    }
    public void setThirdId(String thirdId)
    {
        this.thirdId = thirdId;
    }

    public String getThirdId()
    {
        return thirdId;
    }
    public void setThirdType(String thirdType)
    {
        this.thirdType = thirdType;
    }

    public String getThirdType()
    {
        return thirdType;
    }
    public void setActivitiSync(Integer activitiSync)
    {
        this.activitiSync = activitiSync;
    }

    public Integer getActivitiSync()
    {
        return activitiSync;
    }
    public void setWorkNo(String workNo)
    {
        this.workNo = workNo;
    }

    public String getWorkNo()
    {
        return workNo;
    }
    public void setPost(String post)
    {
        this.post = post;
    }

    public String getPost()
    {
        return post;
    }
    public void setTelephone(String telephone)
    {
        this.telephone = telephone;
    }

    public String getTelephone()
    {
        return telephone;
    }
    public void setUserIdentity(Integer userIdentity)
    {
        this.userIdentity = userIdentity;
    }

    public Integer getUserIdentity()
    {
        return userIdentity;
    }
    public void setDepartIds(String departIds)
    {
        this.departIds = departIds;
    }

    public String getDepartIds()
    {
        return departIds;
    }
    public void setRelTenantIds(String relTenantIds)
    {
        this.relTenantIds = relTenantIds;
    }

    public String getRelTenantIds()
    {
        return relTenantIds;
    }
    public void setClientId(String clientId)
    {
        this.clientId = clientId;
    }

    public String getClientId()
    {
        return clientId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("username", getUsername())
            .append("realname", getRealname())
            .append("password", getPassword())
            .append("salt", getSalt())
            .append("avatar", getAvatar())
            .append("birthday", getBirthday())
            .append("sex", getSex())
            .append("email", getEmail())
            .append("phone", getPhone())
            .append("orgCode", getOrgCode())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("thirdId", getThirdId())
            .append("thirdType", getThirdType())
            .append("activitiSync", getActivitiSync())
            .append("workNo", getWorkNo())
            .append("post", getPost())
            .append("telephone", getTelephone())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("userIdentity", getUserIdentity())
            .append("departIds", getDepartIds())
            .append("relTenantIds", getRelTenantIds())
            .append("clientId", getClientId())
            .toString();
    }
}
